<?php
/**
 * Each dynamic attributes should extend this class.
 *
 * @abstract
 * @author Ishtiaque Shahrier <md.ishtiaque@newgenbd.net>
 * @package core
 * @subpackage libraries
 */
abstract class a_dynamic_attr implements i_dynamic_attr {
    /**
     * Location where the dynamic attributes are stored as php files
     */
    const ATTRIBUTE_FOLDER_NAME = 'attributes';

    /**
     * The attribute owner model class
     * @var i_base_model 
     */
    protected $model;

    /**
     * Constructor.This also takes care of calling the add(0 function.
     * @see add
     * @param i_base_model $model
     */
    public function __construct($model){
        $this->model = $model;
    }

    /**
     * Return the owner model class object
     * @return i_base_model
     */
    public function get_model(){
        return $this->model;
    }
    
}
?>